1. Field of the Invention
Embodiments of the invention relate generally to information handling systems. More specifically, embodiments of the invention provide a system and method for the transcoding of data formats.
2. Description of the Related Art
As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems. Today's enterprises face many challenges, including reducing the total cost of ownership (TCO) of their information processing operations. One approach that has gained popularity in recent years is virtualization, which allows a single resource, such as a server, an operating system, an application, or storage device appear to function as multiple logical resources. Conversely, virtualization can also make multiple physical resources, such as storage devices or servers appear as a single logical resource. Platform virtualization is achieved with a layer of software that separates the physical components of a host computer from instances of a virtual machine (VM). Each instance of a virtual machine (VM) is a separate software simulation of a computer and has its own operating system (OS), generally referred to as the guest OS. Each VM, with its corresponding guest OS, is encapsulated in a virtual disk file that can be moved or copied to any physical computer with sufficient processing power and memory to run it. When executed, each VM runs its own applications independently, as if it were the only system operating on the host hardware.
However, the layer of virtualization software that allows multiple VMs to run on a host, as well as the format of the virtual disk file containing an individual VM, is proprietary to each virtualization vendor. Current vendors include Microsoft, which uses the Virtual Hard Disk (VHD) format, and VMWare, which uses the Virtual Machine DisK (VMDK) format. As a result, VMs stored in VHD format files will only run on host machines implemented with Microsoft virtualization software. Conversely, VMs stored in VMDK format files will only run on host machines implemented with VMWare virtualization software. This restriction creates issues in heterogeneous operating environments as physical resources may be available, but not usable by a VM if it is stored in an incompatible virtual file format.
Current approaches to this issue include virtual file conversion applications, such as the Vmdk2Vhd file converter produced by the vmToolkit organization (www.vmtoolkit.org). Using a sector-by-sector copy operation, it converts a virtual file stored in VMWare's VMDK format to Microsoft's VHD format. While this allows a VM originally created for use with VMWare to run on a Microsoft platform, it is primarily intended for one-time conversions, not for dynamic virtual-to-virtual (V2V) transfers of a VM from one virtual execution environment to another. Similar issues are introduced when a VM is moved to a physical machine in a virtual-to-physical physical (V2P) transfer, such as when the hard disk contents of a failed server are restored from a VM image stored on a backup storage medium. As a result, it is not unusual for a large information technology (IT) operation to store the same VM configuration in different multiple file formats. This multiplicity of file formats increases data storage costs and operational overhead while simultaneously creating the opportunity for errors.